---
title: "Codebook"
author: "Valentina Gonzalez Rostani"
date: "2024-08-19"
output: html_document
---

```{r setup, include=FALSE}
knitr::opts_chunk$set(echo = TRUE)
```

# Codebook for the following files

1. Switching Analysis with data from GSS, SOEP, and for the Appendix Spoon and Kluver & ESS
  * 1_1_Switching_US.do
  * 1_2_Switching_Germany.do
  * 1_3_Switching_Appendix_SpoonKluver.do
  * 1_4_Switching_Appendix_ESS.do
2. Speech Analysis Non-PRITM majoritarianism: text from speeches from Trump 2016 after primaries and before election, MSA regional information about exposed workers, hate incidents, and rallies. 
  * 2_0_Speech_US_dictionaries.ipynb (prepares data to be used in 2_2_Speech_US.do)
  * 2_1_Rally_US.do
  * 2_2_Speech_US.do
  * 2_3_Speech_US_Germany_Appendix_NMF.ipynb [also contains unsupervise topic analysis based on the text of the AfD manifesto]
3. PRITM Analysis: cross-sectional CMP and Regional with Germany
  * German regional exposure with data from: ARVIG (hate incidents), routine workers (Dauth et al replication data), electoral results. 
    * 3_0_Regional_Germany_HateIncidents.rmd (prepares data to be used in 3_1_Regional_Germany.do)
    * 3_1_Regional_Germany.do
  * CMP
    * 3_2_CMP_PRITM.do
    * 3_3_CMP_PRITM_Appendix_Average.do
    * 3_4_CMP_PRITM_Appendix_Dalton.do
    * 3_5_CMP_PRITM_Appendix_ER.do
4. Figures of the main text with ISSP, and Appendix using ESS, CHES, CMP, Stock of robots. 
  * 4_1_Figures_ISSP.do
  * 4_2_Figures_Appendix_ESS.do
  * 4_3_Figures_Appendix_CHES.do
  * 4_4_Figures_Appendix_CMP.do
  * 4_5_Figures_Appendix_StockRobots.do

# 1. Switching Analysis

## 1.1 & 1.2 Switching Analysis (Main text and Appendix)

### 1.1 Switching US

Related to the following codes:

- 1_1_Switching_US.do (table A3: Switching Vote, IV - RTI, US; table A5: Switching Vote (alternative definition), IV - RTI; table A6: Switching Vote, IV - Routine (dummy), US; table A1: Descriptive statistic: USA GSS 2016 vs 2012;   Figure 3: The effect of exposure to automation on vote-switching) 

Related to the following formatted data: 

- `Data\GSS.dta`

Variables:

- **switching2_broad**: Dummy for Switching Broad definition; refers to switching from any party to Republican party; values: 0 = No, 1 = Yes.
- **switching_estrict**: Dummy for Switching Strict definition. In this case vote-switching assigns a 0 only when
voters continue to vote for the establishment party (Democrat) at the election in 2016; values: 0 = No, 1 = Yes.
- **rti**: Routine Task Index based on occupation characteristics; values: Continuous, ranging from -1.52 to 2.24 (higher values indicate more routine tasks). Index proposed by Goos et al., 2014.
- **female**: Respondent's gender; values: 0 = Male, 1 = Female.
- **age**: Respondent's age; values: Continuous, measured in years.
- **educ**: Respondent's years of education; values: years.
- **unemployed**: Respondent's employment status; values: 0 = Employed, 1 = Unemployed.
- **foreign**: Respondent's place of birth; values: 0 = Native-born, 1 = Foreign-born.
- **nonrelig**: Respondent's religious affiliation; values: 0 = Believer, 1 = Non-Believer.
- **offshwalt2**: Dummy for offshorable task; values: 0 = Non-Offshorable, 1 = Offshorable
- **relskillspec**: Skill-Specificity; values: Continuous, measured on a scale (higher values indicate more specific skills).
- **t2**: Task-Tech; values: Continuous, representing the degree to which tasks are technology-related.
- **t3**: Task-Inter; values: Continuous, representing the degree to which tasks are interpersonal.
- **task3cog2and3**: Dummy for routine tasks (routine and manual); values: 0= No, 1=Yes.
- **region**: Region of interview; values: Categorical variable (nominal scale). For example, South Atlantic =5.
- **rincome**: Income levels; values: Categorical variable (nominal scale). For example, less than $1000 =1.
- **wtssnr**: Weights for analysis; values: Continuous, representing the survey weights.

### 1.2 Switching Germany

Related to the following codes:

- 1_2_Switching_Germany.do (table A4: Switching Vote (Only left) - Germany, IV; table A7: Switching Vote From Establishment Left and Right to Populist Right, IV - RTI, German; table A8: Switching Vote, IV - Routine (dummy), Germany; table A9: Switching Vote (Only from the Right), IV - RTI; Figure 3: The effect of exposure to automation on vote-switching) 

Related to the following formatted data: 

- `Data\SOEP.dta`

Variables:

- **switching2**: Dummy for Switching Left to Populist Right; values: 0 = No, 1 = Yes.
- **switching2_r**: Dummy for Switching Right to AfD; values: 0 = No, 1 = Yes.
- **switching2_broad**: Dummy for Switching Broad definition (establishement right or left); values: 0 = No, 1 = Yes.
- **rti**: Routine Task Index based on occupation characteristics; values: Continuous, ranging from -1.52 to 2.24 (higher values indicate more routine tasks). Index proposed by Goos et al., 2014.
- **female**: Respondent's gender; values: 0 = Male, 1 = Female.
- **age**: Respondent's age; values: Continuous, measured in years.
- **educ**: Respondent's years of education; values: years.
- **high**: High-Skilled; values: 0 = No, 1 = Yes (based on greater than 13 years of education - highest 75th percentile of years of education).
- **unemployed**: Respondent's employment status; values: 0 = Employed, 1 = Unemployed.
- **foreign**: Respondent's place of birth; values: 0 = Native-born, 1 = Foreign-born.
- **offshwalt2**: Dummy for offshorable task.
- **relskillspec**: Skill-Specificity; values: Continuous, measured on a scale (higher values indicate more specific skills).
- **t2**: Task-Tech; values: Continuous, representing the degree to which tasks are technology-related.
- **t3**: Task-Inter; values: Continuous, representing the degree to which tasks are interpersonal.
- **task3cog2and3**: Dummy for routine tasks (routine and manual); values: 0= No, 1=Yes
- **sampreg**: Region; values: 1 = West, 2 = East.
- **phrf**: Weights for analysis; values: Continuous, representing the survey weights.

## 1.3 Table with Spoon & Kluever's replication data (Appendix)

Related to the following codes:

- 1_3_Switching_Appendix_SpoonKluver.do (Table A10: Switching in Germany from mainstream to non-mainstream parties 2002-2013)

Related to the following formatted data: 

- `Data\SpoonKluever_2019_EJPR_PartyConvergence.dta`


Variables: 

Here's the codebook for the variables you provided:

* **switch_main**: Dummy variable indicating vote switching from one election to the next from a mainstream to a non-mainstream party; values: 0 = No switching, 1 = Switched.
* **country**: Country code; values: Numeric code representing different countries.
* **edate**: Election date; values: Date format (e.g., "2024-11-05" for November 5, 2024).
* **year**: Year in which the election took place; values: Integer (e.g., 2009).
* **party_last**: Party voted for in the last election; values: String representing the name of the political party (e.g., "CDU").

## 1.4  & 4.2 Figure and Table with ESS (Appendix)

Related to the following codes:

- 1_4_Switching_Appendix_ESS.do (Table A11: Switching in Western European Countries from Mainstream Left to Outsider Radical Right parties 2002-2018) 
- 4_2_Figures_Appendix_ESS (Figure A2: Share routine and non-routine 2002-2018)

Related to the following formatted data: 

- `Data\Appendix_ESS.dta`


Variables: 

- **mnactic**: Main activity status of respondents; values: 1 = Paid work, 2 = Education, 3 = Unemployed, looking for job, 4 = Unemployed, not looking for job, 5 = Permanently sick or disabled, 6 = Retired, 7 = Community or military service, 8 = Housework, looking after children, other, 9 = Other.
- **rti**: Routine Task Index based on occupation characteristics; values: ordinal from -1.52 to 2.24 (higher values indicate more routine tasks). Index proposed by Goos et al., 2014
* **dweight**: Survey weight; values: Continuous.
* **pweight**: Probability weight for survey respondents; values: Continuous.
* **year**: Year of the survey or data collection; values: Integer (e.g., 1995, 1996, ..., 2014).
* **meanprobfreyosborne**: Probability of computerization by Frey and Osborne 20`7; values: Continuous (from 0 to 1).
* **task3cog2and3**: Dummy variable for routine or manual tasks; values: 0 = Not routine/manual, 1 = Routine/manual.
* **college**: Dummy variable indicating if the respondent has a college education; values: 0 = No college, 1 = College educated.
* **parfam**: Party family of the party voted for in the last elections; values: Categorical (e.g: 70 is Nationalists).
* **parfam_close**: Party family of the party the respondent currently feels close to; values: Categorical (e.g: 70 is Nationalists).
* **cntry**: Country name (string); values: Text (e.g., "Germany").
* **unemplindiv2**: Dummy variable indicating unemployment status; values: 0 = Not unemployed, 1 = Unemployed.
* **female**: Dummy variable indicating gender; values: 0 = Non-female, 1 = Female.
* **agea**: Age of the respondent; values: Continuous.
* **mbtru2**: Dummy variable indicating union membership; values: 0 = Not a union member, 1 = Union member.
*  **rlgdgr**: Level of religiosity; values: 0 = Not at all religious, 1-9 = Increasing levels of religiosity, 10 = Very religious.
* **switching2**: Dummy variable indicating switching from supporting (voting) any party family in previous elections (but not nationalist) to currently feeling close to a nationalist party; values: 0 = Did not switch, 1 = Switched.
* **switching2_leftboth**: Dummy variable indicating switching from a leftist party family (voted in last elections) to currently feeling close to a nationalist party; values: 0 = Did not switch, 1 = Switched.
* **countr_year**: Unique identifier for year-country combinations; values: Integer (country code multiplied by the year).



# 2. Speech Analysis Non-PRITM majoritarianism: Trump

## 2.1 Tables Trump Rallies by MSA in the US  (main text and Appendix)

Related to the following codes:

- 2_1_Rally_US.do (Table 1: Trump's Campaign Strategy (Close election 5); Table A13: Trump's Campaing Strategy (Close election 10); Table A14: Trump's Campaing Strategy (Forecasting 2016); Table A12: Summary statistics of variables used in this study about Trump's campaign strategies: rallies)


Related to the following formatted data: 

- `Data\Rally_Visits_MSA.dta`



Variables: 

- **MSA**: Name of the Metropolitan Statistical Area; values: string. 
- **Population**: Number of people in the MSA (Metropolitan Statistical Area); values: Continuous (e.g., 10,000; 500,000).
- **rallies**: Number of rallies per MSA; values: Continuous (e.g., 0; 10; 25).
- **rallies_pop**: Number of rallies by MSA relative to population per 100,000 individuals; values: Continuous (e.g., 0.5; 0.04).
- **visited**: Dummy variable indicating if a visit occurred in the MSA; values: 0 = No, 1 = Yes.
- **visits_pop**: Visit (dummy) by MSA relative to population per 100,000 individuals; values: Continuous (e.g., 0.1; 0.004).
- **anti**: Number of hate incidents per MSA; values: Continuous (e.g., 0; 2; 15).
- **anti_pop**: Number of hate incidents by MSA relative to population per 100,000 individuals; values: Continuous (e.g., 0.0; 0.3).
- **close_election5**: Dummy variable indicating if the 2012 election was close within 5% in the State; values: 0 = No, 1 = Yes.
- **forescasting2**: Dummy variable indicating if the 2016 election forecasting was close  in the State; values: 0 = No, 1 = Yes.
- **close_election**: Dummy variable indicating if the 2012 election was close within 10% in the State; values: 0 = No, 1 = Yes.
- **high_pop_pop**: Workers exposed to automation by MSA relative to population per 100,000 individuals; values: Continuous (e.g., 50.5; 200.7).
- **high_pop**: Workers exposed to automation by MSA relative to population; values: Continuous (e.g., 0.01; 0.15).
- **high**: Number of workers exposed to automation per MSA; values: Continuous (e.g., 150; 2,000).
- **state_num**: State unique indicator; values: Integer (e.g., 1, 2, 3, ... 50).
- **AK AL AR ... WY**: Dummies indicating state; values: 0 = not the state indicated in the  name, 1 = it is the state.



## 2.2 Tables Trump Speech by MSA in the US (main text and Appendix)

Related to the following codes:

- 2_2_Speech_US.do (Table 2: Trump's Campaign Strategy: Speeches, Table A15: Trump's Campaing Strategy: Speeches)

Related to the following formatted data: 

- `Data\Speech_MSA.dta`



Variables: 

- **Population**: Number of people in the MSA (Metropolitan Statistical Area); values: Continuous (e.g., 10,000; 500,000).
- **anti**: Number of hate incidents per MSA (comes from ADL Center on Extremism); values: Continuous (e.g., 0; 2; 15).
- **high_pop**: Workers exposed to automation by MSA relative to population; values: Continuous (e.g., 0.01; 0.15).
* **state**: U.S. state (string); values: State name (e.g., "Florida", "California").
* **state_num2**: U.S. state unique identifier; values: Numeric code representing different states generating by encoding the string.
* **msa_state**: Metropolitan Statistical Area (MSA) name (string); values: MSA name (e.g., "Miami-Fort Lauderdale-Pompano Beach").
* **msa_num**: Metropolitan Statistical Area number; values: Numeric code representing different MSAs.
* **word_count**: Total number of words in Trump's speech; values: Continuous.
* **pro_worker_count**: Number of words counted as pro-worker rhetoric in the speech; The pro-workers dictionary contains stem terms such as “worker," “labor," “job." Values: Continuous.
* **culture_count**: Number of words counted as cultural rhetoric in the speech; the cultural rhetoric dictionary contains terms like “immigr," “border," “values," and “way of life." Values: Continuous.
* **pro_w**: Share of pro-worker words (`pro_worker_count`) over the total number of words (`word_count`) in the speech; values: Continuous.
* **pro_c**: Share of cultural words (`culture_count`) over the total number of words (`word_count`) in the speech; values: Continuous.
* **veryclose10**: Dummy variable indicating whether the previous election was contested with a margin of less than 10 percent; values: 0 = Not close, 1 = Close.
* **foreign**: Share of foreign-born population by state; values: Continuous.
* **month**: Election month of the campaign; values: Integer (e.g., 11 = November).
* **high_pop_pop**: Share of the population that is highly exposed to workers by MSA; values: Continuous.
* **anti_pop**: Hate incidents per 100,000 population; values: Continuous.
* **int_exp_close**: Interaction of high exposure to workers and close election; values: Continuous.
* **int_exp_anti**: Interaction of high exposure to workers and hate incidents; values: Continuous.

## 2.3 Table NMF with Speeches (Trump) and Manifesto (AfD) (Appendix)

Related to the following codes: 

- 2_3_Speech_US_Germany_Appendix_NMF.ipynb (Table A17: NMF Topic Modeling, 4 clusters, top-10 terms. Italic terms are shared in more than one cluster)

Related to the following formatted data: 

- `Data\filtered_papers.csv`
- `Data\filtered_papers_G.csv`

Variables: 

* **clean_text**: Columns containing every chunk of text/sentence of Trump Speches (cleaned_data.csv) or AfD manifesto (cleaned_data_G.csv).  

# 3. PRITM Analysis: cross-sectional CMP and Regional with Germany

## 3.1 Tables Regional Germany  (main text and Appendix)

Related to the following codes:

- 3_0_Regional_Germany_HateIncidents.rmd (final_aggregated_data.dta)
- 3_1_Regional_Germany.do (Table 4: AfD Performance; Table A16: Summary statistics of variables used in this study about AfD regional performance)

Related to the following formatted data: 

- `Data\Regional_Germany.dta`

Variables: 



- **pop**: Population of the district; values: Continuous.
- **routine**: Number of routine workers; values: Continuous.
- **rou_pop**: Share of exposed workers (routine workers) in the population; values: Continuous.
- **perc_hq**: Employment share of workers with a university degree (%); values: Continuous.
- **perc_foreign**: Employment share of foreign-born workers (%); values: Continuous.
- **perc_female**: Employment share of female workers (%); values: Continuous.
- **perc_manuf_trad_nocars**: Employment share of other manufacturing (excluding cars) (%); values: Continuous.
- **perc_manuf_auto**: Employment share of workers in the manufacturing of cars (%); values: Continuous.
- **afp_prop**: Share of AfD votes in the election (related to valid votes); values: Continuous.
- **anti**: Number of hate incidents per district; values (comes from ARVIG R package): Continuous.
- **anti_pop**: Hate incidents per 1,000 population; values: Continuous.
- **state_n**: State number (state identifier); values: Integer.
- **kreis**: geographic unit (district).
- **reg_south**: Dummy variable indicating whether the region is in the south; values: 0 = Not South, 1 = South.
- **reg_east**: Dummy variable indicating whether the region is in the east; values: 0 = Not East, 1 = East.
- **reg_north**: Dummy variable indicating whether the region is in the north; values: 0 = Not North, 1 = North.
- **interaction_pop**: Interaction term between the share of exposed workers and the share of hate incidents; values: Continuous.


##  3.2-5 Cross-sectional Analysis of PRITM countries based on CMP

Related to the following codes:

- 3_2_CMP_PRITM.do
- 3_3_CMP_PRITM_Appendix_Average.do
- 3_4_CMP_PRITM_Appendix_Dalton.do
- 3_4_CMP_PRITM_Appendix_ER.do


Variables that are common: 

- **IFR**: Stock of robots per thousand of workers by country and year; values: Continuous.
- **IFR2**: Logarithm of the number of stock of robots per thousand of workers; values: Continuous.
- **PRITM**: PR with Trichotomous Multipartism; dummy variable.
- **totseats**: Total number of seats in the legislature; values: Integer.
- **number2**: Total number of parties; values: Integer.
- **oecdmember**: Dummy variable indicating whether the country is an OECD member; values: 0 = Not an OECD member, 1 = OECD member.
- **shock**: High Labor Market Protection (LMP) period; values: 0 = Low LMP period, 1 = High LMP period; cut off point is 1994. Other variables such as shock32, shock93, shock96, shock97 and shock98 are similar but variate the cut-off point.  


### 3.2 Tables CMP PRITM Main analysis (Main text and Appendix) Polarization proxied as distance between establishment left and outsider parties. 

Related to the following codes:

- 3_2_CMP_PRITM.do (table 3: PRITM: Partisan Polarization over Redistribution and Fixed Attributes; table A19: Partisan Polarization over Redistribution and Fixed Attributes Different Cut-Of;  table A20: Alternative measures of Partisan Polarization over Fixed Attributes between Mainstream Left and Right-Populist; table A18: Descriptive statistic: PRITM 1970-2019)


Related to the following formatted data: 

- `Data\CMP_main.dta`


Variables: 

- **distance_redist**: Distance between establishment left and outsider parties Redistribution (DR) - Net Welfare; values: Continuous. This is the main dependendent variable when looking at redistribution. Relies on the questions: per504 and per505 which refers to welfare expansion and limitation.
- **distance_fixed**: Distance between establishment left and outsider parties  Fixed-Value Positions (DFVP) - Net Anti-Global; values: Continuous. This is the main dependent variable when looking at fixed attributes. Relies on the following questions: net internationalism (per107, per109), net anti-EU (per108, per110), net protectionism (per407, per406), net national way of life (per602, per601), and net immigration (per602-2, per601-2).
- **distance_fixed_eu**: Distance between establishment left and outsider parties  Fixed values FVP - Net Anti-EU; values: Continuous. It is a variation of `distance_fixed`.
- **distance_nat**: Distance between establishment left and outsider parties Fixed Values FVP - Net Anti-Global Narrow (Internationalism); values: Continuous.  It is a variation of `distance_fixed`.
- **distance_fixed_all**: Distance between establishment left and outsider parties  Fixed Values DFVP - Anti-Global and Cultural; values: Continuous.  It is a variation of `distance_fixed`.
- **distance_fixed_nolog**: Distance between establishment left and outsider parties  Fixed Values DFVP - Anti-Global and Cultural without using logs; values: Continuous.  It is a variation of `distance_fixed`.


### 3.3 Table CMP PRITM Alternative Definition - Average distance (Appendix)


Related to the following codes: 

- 3_3_CMP_PRITM_Appendix_Average.do (table A21: Partisan Polarization over Redistribution and Fixed Attributes)



Related to the following formatted data: 

- `Data\CMP_average.dta`




Variables: 


- **dist_av_fixed**: party system polarization over fixed attributes  estimated as the distance of
each party to the average position on each one of these areas from the CMP. This variable is similar to the one used in the main analysis (`distance_fixed`) but the way polarization is calculated is different. 
- **dist_av_welfare_policy**: party system polarization over redistribution  estimated as the distance of each party to the average position on each one of these areas from the CMP. This variable is similar to the one used in the main analysis (`distance_redist`) but the way polarization is calculated is different. 


### 3.4 Table CMP PRITM Alternative Definition - Dalton Index (Appendix)


Related to the following codes: 

- 3_4_CMP_PRITM_Appendix_Dalton.do (table A22: Partisan Polarization over Redistribution and Fixed Attributes, Dalton Index)



Related to the following formatted data: 

- `Data\CMP_Dalton.dta`




Variables: 


- **fixed_dt2**: party system polarization over fixed attributes  proxied through Dalton Index. This variable is similar to the one used in the main analysis (`distance_fixed`) but the way polarization is calculated is different. 
- **welfare_policy_dt2**: party system polarization over redistribution  proxied through Dalton Index. This variable is similar to the one used in the main analysis (`distance_redist`) but the way polarization is calculated is different. 



### 3.5 Table CMP PRITM Alternative Definition - Esteban and Ray (Appendix)


Related to the following codes: 

- 3_4_CMP_PRITM_Appendix_ER.do (able A23: Partisan Polarization over Redistribution and Fixed Attributes)



Related to the following formatted data: 

- `Data\CMP_ER.dta`




Variables: 


- **distance_fixed3**: party system polarization over fixed attributes  proxied through  Esteban and Ray. This variable is similar to the one used in the main analysis (`distance_fixed`) but the way polarization is calculated is different. 
- **distance_welfare_policy3**: party system polarization over redistribution  proxied through  Esteban and Ray. This variable is similar to the one used in the main analysis (`distance_redist`) but the way polarization is calculated is different. 



# 4 Additional Figures of the main text and Appendix

## 4.1 Figures with ISSP (main text and Appendix)

Related to the following codes:

- 4_1_Figures_ISSP.do (Figure 1: Relative Share of Labor Force 1995 to 2014,  Figure 2: Electoral consequences, Routine and Non-Routine Voters, Figure A3: Importance of job security, Difficulties to find a new job, Concerns about losing the job and Job dissatisfaction)


Related to the following data: 

- `Data\Figures_ISSP.dta`


Variables: 

- **task1**: Type of task performed, Non-Routine Cognitive; values: 0 = Not Non-Routine Cognitive, 1 = Non-Routine Cognitive.
- **task2**: Type of task performed, Routine; values: 0 = Not Routine, 1 = Routine.
- **task33**: Type of task performed, Non-Routine Manual; values: 0 = Not Non-Routine Manual, 1 = Non-Routine Manual.
- **task2and3**: Dummy for routine tasks (routine and manual); values: 0= No, 1=Yes
- **weight**: Survey weight provided by the survey to adjust for sampling design; values: Continuous.
- **year**: Year of the survey or data collection; values: Integer (e.g., 1995, 1996, ..., 2014).
- **radicalR**: Voted for a radical right party in the last election; values: 0 = Did not vote for a radical right party, 1 = Voted for a radical right party.
- **mainstreamleft**: Voted for a mainstream left party in the last election; values: 0 = Did not vote for a mainstream left party, 1 = Voted for a mainstream left party.
- **mainstreamright**: Voted for a mainstream right party in the last election; values: 0 = Did not vote for a mainstream right party, 1 = Voted for a mainstream right party.
- **nonvoters**: Did not vote in the last election; values: 0 = Voted, 1 = Did not vote.
- **W_easynewjob**: Perception of how easy or difficult it is to find a new job; values: Ordinal (1 = Very easy, 5 = Very difficult).
- **W_satisfaction**: Perception of satisfaction with current work; values: Ordinal (7 = Very dissatisfied, 1 = Very satisfied).
- **W_losing**: Perceptions and concerns about losing the current job; values: Ordinal (4 = Not concerned at all, 1 = Very concerned).
- **W_jobsec**: Perceptions about importance of job security; values: Ordinal (1 = Very important, 5 = Not important).
- **emplB**: Employment status, used to filter those employed or looking for a job;  categorical.
- **rti**: Routine Task Index based on occupation characteristics; values: ordinal from -1.52 to 2.24 (higher values indicate more routine tasks). Index proposed by Goos et al., 2014



## 4.2 Figure with data from ESS (Appendix)

Refer to section above 1.4 & 4.2


## 4.3 Figure CHES  (Appendix)

Related to the following codes:

- 4_3_Figures_Appendix_CHES.do (Figure A4: Number of Radical Right Parties in the Party System) 


Related to the following data: 

- `Data\1999-2019_CHES_dataset_means(v3).dta`


Variables: 

* **family**: Party family of the political party; categorical variables (e.g, 1 radical right)
* **radright**: Dummy variable indicating whether the party belongs to a radical right party family; values: 0 = Not radical right, 1 = Radical right.
* **year**: Year of the CHES Survey; values: Integer (e.g., 1999, 2002, ..., 2019).


## 4.4 Figure with data from CMP (Appendix)

Related to the following codes:

- 4_4_Figures_Appendix_CMP.do (Figure A5: Number of Nationalist Parties in Elections)


Related to the following data: 

- `Data\CMP\MPDataset_MPDS2020a_stata14.dta`


Variables: 

* **edate**: Election date; values: Date format (e.g., "2024-11-05" for November 5, 2024).
* **year**: Year of the election; generated from the election date (`edate`); values: Integer (e.g., 2000, 2004, 2008).
* **parfam**: Indicates party family; categorical variable (e.g 70 = Nationalist)
* **radright**: Dummy variable indicating whether the party belongs to a radical right party family; values: 
   - 1 = Radical right (if `parfam` equals 70)
   - 0 = Not radical right (if `parfam` is not equal to 70).
* **countryname**: Country name; values: String (e.g., "Germany", "France").


## 4.5 Figure Stock Robot from Acemoglu & Restrepo (Appendix)

Related to the following codes:

- 4_5_Figures_Appendix_StockRobots.do (Figure A1: Stock of robots per thousand of workers base 1993) 

Related to the following data: 

- `Data\reproducingacemoglu.csv`


Variables: 

* **year**: Year of the data; values: Integer (e.g., 1993, 1994, ..., 2020).
* **germany**: Stock of industrial robots per thousand workers, based on 1993 levels in Germany; values: Continuous.
* **denmarkfinlandfranceitalyandswed**: Stock of industrial robots per thousand workers, based on 1993 levels in Denmark, Finland, France, Italy, and Sweden; values: Continuous.
* **unitedstates**: Stock of industrial robots per thousand workers, based on 1993 levels in the United States; values: Continuous.
* **norwayspainanduk**: Stock of industrial robots per thousand workers, based on 1993 levels in Norway, Spain, and the United Kingdom; values: Continuous.


